package java0417;

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class Test {
    public static void main(String[] args) throws SQLException {
        // 1.创建数据源对象
        // 不同的数据库会指定不同的数据库类
        // 也可以使用 DataSource 向上转型
//        DataSource dataSource = new MysqlDataSource();
        MysqlDataSource dataSource = new MysqlDataSource();
        // 2.指定数据源内部的参数
        // 数据库所在的服务器地址, 端口号, 用户名, 密码等信息
        dataSource.setUser("root");
        dataSource.setPassword("991025");
        dataSource.setUrl("jdbc:mysql://localhost:3306/test?characterEncoding=utf8&useSSL=true");
        // 3.和服务器建立连接
        //  SQLException 数据库中的异常
        // 例如:用户名密码错误, ip端口错误, 数据库不存在
        Connection connection = dataSource.getConnection();
        // 1,2,3是准备工作,程序启动时候执行一次
        // 4.正式操作数据库,先构造一个 SQL 语句
        String sql = "insert into student values (1000, 'man', 'wangwu', 123123123, 1)";
        // 5.执行 sql 语句
        PreparedStatement statement = connection.prepareStatement(sql);
        // 针对 insert, delete, update 语句,executeUpdate()返回影响了几行代码.
        int ret = statement.executeUpdate();
        System.out.println("有" + ret + "行数据被改变");
        // 6.收尾操作
        statement.close();
        connection.close();
    }
}
